package com.unswift.window.extend;

import java.util.HashMap;
import java.util.Map;

import javax.swing.JPanel;

@SuppressWarnings("serial")
public class Form extends JPanel{

	public final static String ATTRIBUTE_COLUMN_TABLE="columnTable";//创建表列表格
	public final static String ATTRIBUTE_INDEX_TABLE="indexTable";//创建表索引表格
	public final static String ATTRIBUTE_ATTR_TABLE_NAME="attrTableName";//当前表单属性-表名称
	public final static String ATTRIBUTE_ATTR_TABLE_ENGINE="attrTableEngine";//当前表单属性-表存储引擎
	public final static String ATTRIBUTE_ATTR_TABLE_ROW_FORMAT="attrTableRowFormat";//当前表单属性-行格式
	public final static String ATTRIBUTE_ATTR_TABLE_CHARSET="attrTableCharset";//当前表单属性-表字符集
	public final static String ATTRIBUTE_ATTR_TABLE_COLLATION="attrTableCollation";//当前表单属性-排序
	public final static String ATTRIBUTE_ATTR_TABLE_AUTO_INCREMENT="attrTableAutoIncrement";//当前表单属性-自增值
	public final static String ATTRIBUTE_ATTR_TABLE_COMMENT="attrTableComment";//当前表单属性-自增值
	
	private Map<String, Object> attribute;//存储表格关联的对象，见ATTRIBUTE_开头的常量
	
	public Form() {
		this.attribute=new HashMap<String, Object>();
	}
	
	/**
	 * 获取表格相关对象，见ATTRIBUTE_开头的常量
	 * @param key
	 * @return
	 */
	@SuppressWarnings("unchecked")
	public <T> T getAttribute(String key) {
		return (T)attribute.get(key);
	}
	/**
	 * 设置表格相关对象，见ATTRIBUTE_开头的常量
	 * @param key
	 * @param value
	 */
	public void setAttribute(String key, Object value) {
		this.attribute.put(key, value);
	}
}
